#pragma once

#include "cal.h"
#include "calcl.h"
/*

typedef struct DataRec
{
	/ **
	* \brief union of pointers to memory that 
	* represents the data of the matrix
	* /
	union
	{
		CALfloat*  f_data;
		CALuint*   u_data;
		CALint*    i_data;
		CALdouble* d_data;
		CALchar*   c_data;
	};
	/ **
	* \var Width
	* \brief Width of the data matrix
	* /
	CALuint Width;
	/ **
	* \var Height
	* \brief Height of the data matrix
	* /
	CALuint Height;
	/ **
	* \var ComponentSize
	* \brief number of data points 
	* in a single vector, can be
	* either 1, 2, or 4
	* /
	CALuint ComponentSize;
	/ **
	* \var DataSize
	* \brief The width of the data
	* in bytes. i.e. sizeof(CALfloat)
	* /
	CALuint DataSize;
	/ **
	* \var Linear
	* \brief Flag to specifiy whether
	* to use linear memory or tiled memory
	* /
	CALboolean Linear;
	/ **
	* \var Scratch
	* \brief Flag to specify whether to
	* use the data in a scratch buffer
	* or not
	* /
	CALboolean Scratch;
} Data;*/
